The convergence of the mobile telephone network, the static telephone network, and the IP network provides a myriad of communication options for users. If one seeks to contact another individual, he or she may do so by electronic mail or e-mail, Instant Messaging (IM), wired or wireless telephone, personal computer, pager, personal digital assistant or PDA, and Unified Messaging or UM systems, to name but a few. With so many options, it is difficult, if not impossible, to determine which option at a given point in time will provide the caller with the highest likelihood of contacting the desired individual or contactee. Trial and error and guesswork are the typical techniques used to contact the contactee, which more often than not leads to a waste of time and frustration on the part of the contactor.
Various attempts have been made to provide a presence aware network, which would temporally track an individual's usage of selected communication devices to provide a contactor with the highest likelihood of contacting the individual. Most recently, the Session Initiation Protocol or SIP (which is a simple signaling/application layer protocol for data network multimedia conferencing and telephony) has been developed to provide a degree of presence awareness in a communication network. Although other protocols are equally supportive of presence concepts, SIP provides an illustrative basis for the present invention.
In SIP, end systems and proxy servers can provide services such as call forwarding, contactee and contactor number delivery (where numbers can be any naming scheme such as a conventional URL format), personal mobility (the ability to reach a contactee under a single, location-independent address even when the contactor changes terminals), terminal-type negotiation and selection (e.g., a contactor can be given a choice on how to reach the contactee), mobile phone answering service, terminal capability negotiation, contactor and contactee authentication, blind and supervised call transfer, and invitations to multicast conferences.
To provide these varied services, SIP uses a relatively simple message system, namely an “INVITE” message (with the contactor's codec preferences) and an “OK” message (with the contactee's codec preferences), and various software entities, namely registrars which maintain a map of the addresses of a given user at the current time, proxies which perform call routing, session management, user authentication, redirect functions, and routing to media gateways, redirect servers which perform a subset of forwarding functions, and SIP location servers which maintain user profiles and provide subscriber registration. “Registration” is a mechanism whereby a user's communication device registers with the network each time he or she comes online and individual profiles are accessed that specify information for routing based on a number of different criteria.
Many contact centers have been enabled with some sort of callback functionality associated with a callback application. However, most callback applications require a fixed number or email address to call back a customer and these applications do not usually have the ability to check if the customer is available on the fixed number or email address when the contact center agent is ready to call back the customer. Rather, most contact centers employ static content callback applications meaning that there is no state check to find the best way to reach the customer nor does the application determine if it is a good time to call back the customer.
One can imagine a situation where a contact center agent has figured out an answer to a customer's question and is ready to call back the customer. The agent may check for a callback number or email address and simply attempt to callback the customer using one or both of these mediums. In the case of the agent calling back the customer using a phone number provided by the customer (e.g., home phone number, work number, cellular phone number, etc.), the agent may be interrupting the customer during an important meeting. On the other hand, if the agent simply sends an email to the customer there is no verification that the message was received by the customer. The email message may go unread by the customer if he/she does not have access to email for an extended period of time. This may be problematic if the customer required a resolution from the contact center agent relatively quickly.
There are products that exist which allow a customer to specify a time that he/she would like to be called back at. However, when a customer specifies a time that he/she would like to be called back there is no guarantee that the contact center agent will be able to reach the customer during the specified time. If the contact center agent is unable to reach the customer then additional frustration is introduced because the contact center agent will likely need to call back the customer again at a later time. All of these problems introduce inefficiencies in contact center performance, which may ultimately lead to an overall loss in profitability for the contact center.